/**
 * 	 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 *   @author Colin Redmond
 *   Copyright (C) 2011 Colin Redmond
 *
 *   Licensed under the Apache License, Version 2.0 (the "License");
 *   you may not use this file except in compliance with the License.
 *   You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 *   Unless required by applicable law or agreed to in writing, software
 *   distributed under the License is distributed on an "AS IS" BASIS,
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *   See the License for the specific language governing permissions and
 *   limitations under the License.
 */
package com.cred.industries.platform.business.facade;

import org.joda.time.DateTime;

import com.cred.industries.platform.business.objects.CustomerBO;
import com.cred.industries.platform.business.objects.MetricsBO;
import com.cred.industries.platform.business.objects.builders.MetricsBOBuilder;
import com.cred.industries.platform.dao.IMetricsDAO;
import com.cred.industries.platform.dao.MetricsDAOFactory;
import com.cred.industries.platform.session.SessionData;

public class MetricsFacade {
	
	private static String TIME_IN_APP = "time in app";
	private static String MILLISECONDS = "milliseconds";


	public void timeSpentInApp(int secondsInApp) {
		
		int sourceCustId = -1;
		CustomerBO cust = SessionData.getSessionCustomer();
		if(!cust.getPersonaName().equals("guest")) {
			sourceCustId = cust.getCustomerId();
		}
		DateTime currentTime = new DateTime();
		
		MetricsBO metricsBO = new MetricsBOBuilder(TIME_IN_APP, sourceCustId, currentTime)
									.addInt(MILLISECONDS, secondsInApp) 
									.build();
		
		IMetricsDAO metricsDAO = MetricsDAOFactory.create();
		metricsDAO.insert(metricsBO);
	}
}